события не приходят после рестарта соединения

события не приходят после рестарта соединения
Atom
3/15/2011
Greene-nsk


Запускаю МТС, вызываю RegisterTrades, RegisterSecurity, RegisterQuotes, подписываюсь на события, запускаю стратегии и т.п. Все работает хорошо.

Затем останавливаю SmartCOM службу. После этого мне приходят ошибки (ниже) и через некоторое время SmartCOM запускается и приходит событие ITrader.Connected. Там я еще раз вызываю StartExport().

После этого никакие события не приходят (NewTrades, SecuritiesChanged, etc)

Code

15.03.2011 18:34:47 [OpenWealth.StockSharp.TraderInitializator.Trader_ConnectionError] ERROR: Ошибка соединения System.InvalidOperationException: SmartCOM не ответил на проверку живой-мертвый. Возможно, приложение SmartCOM зависло. ---> System.Runtime.InteropServices.COMException (0x800706BA): Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA)
в StClientLib.StServerClass.GetPrortfolioList()
в Ecng.Trading.Smart.SmartComWrapper.#=qzWktXLkWRXjcy$9UPCrTtQ==(StServer #=qDE$BkALBNSP6uOJFV2SnqQ==)
в Ecng.Trading.Smart.SmartComWrapper.#=q75j_Z5JSRxNkiXV88FHEug==(Action`1 #=qqKsTnjrmu7pdXnaFSMdxhw==)
в Ecng.Trading.Smart.SmartComWrapper.#=qPAmHhfnOqQs1DyOx22FKIQ==()
в Ecng.Trading.Smart.SmartComWrapper.#=qTEZcqzKAm3Cn_kD2t7aeIKtT$8TmHKRNuNLZRbKLg7U=.#=qGabvzGf2W3n6e2vvgzqGFyHO1jY9wiU5NLC9CPAX9gI=()
--- Конец трассировки внутреннего стека исключений --- (28181)
15.03.2011 18:35:02 [OpenWealth.StockSharp.TraderInitializator.Trader_ConnectionError] ERROR: Ошибка соединения System.Runtime.InteropServices.COMException (0x800706BA): Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA)
в StClientLib.StServerClass.disconnect()
в Ecng.Trading.Smart.SmartComWrapper.#=qnCgDm1vHPvXpt7N3mOxtVy8NZjT2eQuyDSB5hXbNr7Q=(StServer #=qKUBRzCyeMBm8zUOTVMXn3A==)
в Ecng.Trading.Smart.SmartComWrapper.#=q75j_Z5JSRxNkiXV88FHEug==(Action`1 #=qqKsTnjrmu7pdXnaFSMdxhw==)
в Ecng.Trading.Smart.SmartComWrapper.Disconnect()
в Ecng.Trading.Smart.SmartTrader.OnDisconnect()
в Ecng.Trading.Algo.BaseTrader.Disconnect()
в Ecng.Trading.Algo.BaseTrader.#=qgA3BsOJZFeBWXFGAp7wz7Q==() (15052)
15.03.2011 18:35:03 [OpenWealth.StockSharp.TraderInitializator.<Init>b__2] Соединение установлено. (751)
15.03.2011 18:35:03 [OpenWealth.StockSharp.TraderInitializator.<Init>b__2] Запускаем экспорт Smart ... (0)


Установка соединения и запуск экспорта:
Code

// подписываемся на событие успешного соединения
this.Trader.Connected += () =>
{
this.IsConnected = true;
Log.Out("Соединение установлено.", LogLevel.notice);

// запускаем экпорт, если не запущен
if (!this.Trader.IsExportRunning)
{
Log.Out("Запускаем экспорт " + Const.TraderType + " ...", LogLevel.notice);
this.Trader.StartExport();
}

_ConnectHandle.Set();
};

Tags:


Thanks:


Mikhail Sukhov

Avatar
Date: 3/23/2011
Reply


Greene-nsk
Запускаю МТС, вызываю RegisterTrades, RegisterSecurity, RegisterQuotes, подписываюсь на события, запускаю стратегии и т.п. Все работает хорошо.

Затем останавливаю SmartCOM службу. После этого мне приходят ошибки (ниже) и через некоторое время SmartCOM запускается и приходит событие ITrader.Connected. Там я еще раз вызываю StartExport().

После этого никакие события не приходят (NewTrades, SecuritiesChanged, etc)


Бага еще актуальна?
Thanks:

Greene-nsk

Avatar
Date: 3/24/2011
Reply


Mikhail Sukhov

Бага еще актуальна?


Вы здесь:
http://stocksharp.com/posts/m/6819/
написали, что стартовать register заново надо самостоятельно. Стартую самостоятельно.
В том же посте еще проблема с рестартом описана. Т.е. он часто просто не поднимается.
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy